home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung / Power-Programmierung (Tewi)(1994).iso / magazine / pcmagazi / 1988 / 19 / hd2flopy.prg < prev    next >
Text File  |  1988-10-11  |  1KB  |  69 lines

  1. *** HD2FLOPY.PRG
  2. SET TALK OFF
  3. CLEAR
  4. odbf=SPACE(30)
  5. fdrive="A"
  6. ndbf=SPACE(8)
  7. @ 1,0 SAY "Backup which database?" GET odbf
  8. @ 3,0 SAY "To which floppy drive?" GET fdrive
  9. @ 5,0 SAY "Enter Backup filename:" GET ndbf
  10. READ
  11. odbf=TRIM(odbf)
  12. ndbf=TRIM(ndbf)
  13. fmess="Insert a blank, formatted disk in ";
  14.      +"Drive &fdrive, and press a key..."
  15. IF READKEY()=12
  16.   RETURN
  17. ENDIF
  18. IF ndbf<=" "
  19.   ? [No TARGET file]+CHR(7)
  20.   RETURN
  21. ENDIF
  22. IF FILE(odbf) .OR. FILE(odbf+".DBF")
  23.   USE &odbf
  24. ELSE
  25.   ? [No SOURCE file: "&odbf"]+CHR(7)
  26.   RETURN
  27. ENDI
  28.  
  29. SET DEFAULT TO &fdrive
  30. DO WHILE DISKSPACE()<1
  31.   WAIT fmess
  32. ENDDO
  33.  
  34. * Calc header size
  35. STOR 0 TO fldno,header
  36. DO WHILE ""<FIELD(fldno+1)
  37.   fldno=fldno+1
  38. ENDDO
  39. header=32*fldno+35
  40.  
  41. * Calc # of floppies needed
  42. floprecs=INT((DISKSPACE()-header)/RECSIZE())
  43. flopneed=INT((RECCOUNT())/floprecs)+1
  44. makeflop="F"
  45. DO WHILE makeflop$"Ff"
  46.   ? STR(flopneed)+" Disks required.  "
  47.   ?? "Press <ENTER> to proceed."
  48.   WAIT "To format additional disks, insert ";
  49.       +"floppy and press <F>" TO makeflop
  50.   IF makeflop$"Ff"
  51.     RUN FORMAT &fdrive:
  52.   ENDIF
  53. ENDDO
  54.  
  55. sofar="0"
  56. DO WHILE .NOT. EOF()
  57.   SET TALK ON
  58.   sofar=LTRIM(STR(VAL(sofar)+1))
  59.   COPY NEXT floprecs TO &ndbf..&sofar
  60.   SET TALK OFF
  61.   IF .NOT. EOF()
  62.     SKIP
  63.     DO WHILE DISKSPACE()<RECSIZE()+header
  64.       WAIT fmess
  65.     ENDDO
  66.   ENDIF
  67. ENDDO
  68. SET DEFAULT TO C
  69.